#ifndef FILTERDIALOG_H
#define FILTERDIALOG_H

#include <QDialog>
#include "sdocument.h"
#include "matrix.h"
#include "ui_dialog.h"

#define DLL_SPEC extern "C" __declspec (dllexport)

DLL_SPEC void PrepareImage();
DLL_SPEC void InitMenu(QMenu* menu,QAction** action,QString& funcName);
DLL_SPEC void InitPointers(ImageDocument* currentDocument);

class FilterConfiguration:public QDialog,public Ui::dlgFilter
{
Q_OBJECT
public:
        FilterConfiguration(QWidget* parent= 0);
        void DrawMatrix(math::matrix<float> * matr);
private:
        QString curAction;
        QMap<QString,math::matrix<float> > filters;
private slots:
        void on_pbMedian_clicked();
        void on_pbSave_clicked();
        void on_cbFilter_activated(const QString &);
        void on_pbProcess_clicked();
};

#endif // FILTERDIALOG_H
